Devices, systems, and methods for remote video retrieval

ABSTRACT

Methods and systems provided. A system may include at least one camera at a camera location, wherein the at least one camera is configured to record one or more videos and one or more images. The system may further include a server. The server may be configure to download at least one image of the one or more images captured at the camera location. The server may also be configured to display the one or more downloaded images. Further, the server may also be configured to, in response to a user selecting a displayed image of the one or more displayed images, download a specific portion of the previously recorded one or more videos captured at the camera location.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/867,316, filed May 5, 2020, which is a continuation-in-part of U.S.patent application Ser. No. 14/451,067, filed Aug. 4, 2014, now U.S.Pat. No. 10,645,459, issued May 5, 2020, the disclosure of which ishereby incorporated herein in its entirety by this reference.

TECHNICAL FIELD

This disclosure relates generally to camera systems and, morespecifically, to methods, devices, and systems for remote, on-demandvideo retrieval.

BACKGROUND OF RELATED ART

Conventional video surveillance systems are on-premise, vender-specific,and utilize localized digital video recorders (DVR) and/or network videorecorders (NVR) with limited accessibility outside of the area in whichthey are positioned. As digital technology has advanced and Internetprotocol (IP) cameras have become widely available, the implementationof these IP-enabled cameras into video surveillance systems has notchanged. Camera systems are being implemented at an increasing rateacross broad geographical areas, and the need to centralize managementas well as to provide secure global access to these disparate camerasystems is becoming a critical necessity.

The increased data capabilities of cellular and satellite providers makeit possible to place cameras virtually anywhere in the world. However,cellular and satellite connections are metered, making it costprohibitive to stream large amounts of data intensive video.Additionally, cellular and satellite communication links are capped toensure bandwidth is available to all customers.

BRIEF SUMMARY

In one specific embodiment, a system may include at least one camera, atleast one storage device communicatively coupled and local to the atleast one camera, and a communication device communicatively coupled tothe at least one storage device. The system may further include a servercoupled to the communication device and application program. Theapplication program may be configured to periodically download an imagefrom the at least one camera, enable one or more downloaded images beingassociated with a known time period to be displayed at an electronicdevice, and enable video based on a selected downloaded image to bedisplayed at the electronic device.

In another specific embodiment, a method may include capturing at leastone video clip and at least one image with at least one camera at acamera location and periodically downloading one or more images of theat least one image to a remote server. The method may further includeenabling video including the at least one video clip and beingassociated with at least one selected image of the at least one image tobe displayed at an electronic device remote from the at least one cameraand the server.

Yet other embodiments of the present disclosure comprisecomputer-readable media storage storing instructions that when executedby a processor cause the processor to perform instructions in accordancewith one or more embodiments described herein.

Other aspects, as well as features and advantages of various aspects, ofthe present disclosure will become apparent to those of skill in the artthrough consideration of the ensuing description, the accompanyingdrawings and the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an onsite camera system including one or more camerascoupled to a storage device.

FIG. 2 illustrates a cloud-based camera system.

FIG. 3 depicts a system, according to an embodiment of the presentdisclosure.

FIG. 4 is a block diagram of a system for implementing variousembodiments of the present disclosure.

FIG. 5 is a screenshot illustrating a graphical user interface (GUI)generated by an application program, in accordance with an embodiment ofthe present disclosure.

FIG. 6 is a flowchart illustrating a method, according to an embodimentof the present disclosure.

FIG. 7 is a flowchart of another method, in accordance with anembodiment of the present disclosure.

DETAILED DESCRIPTION

Referring in general to the accompanying drawings, various embodimentsof the present disclosure are illustrated to show the structure andmethods for recording and retrieving video with a system, such as avideo surveillance system. Common elements of the illustratedembodiments are designated with like numerals. It should be understoodthat the figures presented are not meant to be illustrative of actualviews of any particular portion of the actual device structure, but aremerely schematic representations which are employed to more clearly andfully depict embodiments of the disclosure.

The following provides a more detailed description of the presentdisclosure and various representative embodiments thereof. In thisdescription, functions may be shown in block diagram form in order notto obscure the present disclosure in unnecessary detail. Additionally,block definitions and partitioning of logic between various blocks isexemplary of a specific implementation. It will be readily apparent toone of ordinary skill in the art that the present disclosure may bepracticed by numerous other partitioning solutions. For the most part,details concerning timing considerations and the like have been omittedwhere such details are not necessary to obtain a complete understandingof the present disclosure and are within the abilities of persons ofordinary skill in the relevant art.

FIG. 1 depicts an onsite camera system 100 including one or more cameras102 and a storage device 104, which is in the vicinity of cameras 102.Stated another way, system 100 utilizes onsite data storage. An onsitedata storage solution requires storage device 104 (i.e., either a memorycard, hard drive, or a digital video recorder (DVR)/network videorecorder (NVR) appliance/computer) to be onsite and connected directlyto cameras 102. During operation, storage device 104 continuouslyrecords video captured by cameras 102 (i.e., 24 hours a day/7 days aweek). If a remote user wants to watch any recorded video, the user musttravel to onsite camera system 100 and download video footage fromstorage device 104. This is both time consuming and expensive. Inaddition, if onsite camera system 100 is off-grid (e.g., powered by windor solar), storage device 104 may be required to draw significant powerrequiring additional costly power infrastructure to be installed. Ifstorage device 104 includes a DVR/NVR device, Internet connectivityusually does not work well because Internet enabled DVR/NVR systems aredesigned to be connected to broadband connections and require a largeamount of bandwidth. Since broadband Internet does not exist in remotelocations, remote access to Internet enabled DVR/NVRs is troublesome, ifnot impossible.

FIG. 2 depicts a cloud-based camera system 150 including one or morecameras 152 coupled to one or more servers 154 via the Internet 156 anda communication device 158 (i.e., a cellular or satellite modem). Somedisadvantages of cloud-based camera systems are poor video quality andexpensive monthly communication costs. A cloud-based camera system mayrequire one or more cameras at a remote location to continuously streamvideo over a metered Internet connection (i.e., 24 hours a day/7 days aweek). This constant streaming of video over an Internet connection isvery expensive. Further, the bandwidth of the Internet connection isoften limited resulting in poor video quality. Another problem withusing a cloud-based camera system for a remote camera location is, ifthe Internet connection is lost, recording may also be lost.

Exemplary embodiments, as described herein, relate to a camera systemconfigured to record video locally rather than across the Internet andprovide a way for a user to access any specific portion of the recordedvideo in an efficient and cost-effective manner. More specifically,various embodiments relate to managing streaming video connections tocameras based on user demand, thus allowing for live video to bestreamed economically over metered Internet connections (e.g., cellularand satellite) while limiting data usage (e.g., using less than 2 GB ofdata a month) compared to conventional solutions, which typically use anaverage of 32 GB of data a month. Further, embodiments of the presentdisclosure support configurable bit rates to allow cameras to streamlive video over various connection speeds (e.g., as little as 50 Kbsconnections and higher).

FIG. 3 depicts a system 200 in accordance with an embodiment of thepresent disclosure. System 200, which may also be referred to as a“video camera system,” includes one or more cameras 202, each of whichbeing communicatively coupled to one or more local storage devices 204.Local storage device 204, which may comprise, for example only, internalflash media, a network attached storage device, or any other suitableelectronic storage device, may be configured for receiving and storingdata (e.g., video, images, and/or i-frames) captured by camera 202. Aswill be understood by a person having ordinary skill in the art, anamount of time that can be recorded by local storage device 204 may be afunction of a size of the memory of local storage device 204 and thebitrate (quality and frame-rate) at which the recording is saved. It isnoted that storage device 204, and a recording format and encodingperformed by local storage device 204, may be dependent on the type ofcamera 202. Local storage device 204 may include a finite amount ofmemory; thus, according to one embodiment, video recording may behandled as first in first out (FIFO) and the oldest recordings may beoverwritten when memory of local storage device 204 is full.

System 200 may further include one or more electronic devices 208, whichmay comprise, for example only, a mobile device (e.g., mobile phone,tablet, etc.), a desktop computer, or any other suitable electronicdevice including a display. Electronic device 208 may be accessible toone or more end-users. A communication device (e.g., a modem) 206, whichmay comprise any suitable and known communication device, may be coupledto local storage device 204, and possibly cameras 202, via wiredconnections, wireless connections, or a combination thereof.Communication device 206 may further be coupled to electronic devices208 via the Internet 210. System 200 may further include a server 205(e.g., a cloud server), which is remote from cameras 202 and which iscommunicatively coupled to each electronic device 208 and eachcommunication device 206. According to various embodiments of thepresent disclosure, camera 202, local storage device 204, andcommunication device 206 may be within a first location (a “cameralocation”), and server 205 may be within a second location, remote fromthe camera location. In addition, each electronic device 208 may beremote from the camera location and server 205. As will be appreciatedby a person having ordinary skill in the art, system 200 is modular,expandable, and scalable.

FIG. 4 illustrates a system 350 that may be used to implementembodiments of the present disclosure. System 350 may include a computer352 that comprises a processor 354 and memory 356. For example only, andnot by way of limitation, computer 352 may comprise a workstation, alaptop, or a hand-held device such as a cell phone or a personal digitalassistant (PDA), a server (e.g., server 205) or any otherprocessor-based device known in the art. In one embodiment, computer 352may be operably coupled to a display (not shown in FIG. 4 ), whichpresents images to the user via a GUI.

Generally, computer 352 may operate under control of an operating system362 stored in the memory 356, and interface with a user to accept inputsand commands and to present outputs through a GUI module 363. AlthoughGUI module 363 is depicted as a separate module, the instructionsperforming the GUI functions may be resident or distributed in theoperating system 362, an application program 364, or implemented withspecial purpose memory and processors. Computer 352 may also implement acompiler 366 that allows application program 364 written in aprogramming language to be translated into processor 354 readable code.After completion, application program 364 may access and manipulate datastored in the memory 356 of the computer 352 using the relationships andlogic that are generated using the compiler 366.

Further, operating system 362 and application program 364 may includeinstructions that, when read and executed by the computer 352, may causethe computer 352 to perform the steps necessary to implement and/or useembodiments of the present disclosure. Application program 364 and/oroperating instructions may also be tangibly embodied in memory 356and/or data communications devices, thereby making a computer programproduct or article of manufacture according to an embodiment of thepresent disclosure. As such, the term “application program” as usedherein is intended to encompass a computer program accessible from anycomputer readable device or media. Application program 364 may exist onan electronic device (e.g., electronic device 208; see FIG. 3 ) or aserver (e.g., server 205; see FIG. 3 ). Furthermore, portions ofapplication program 364 may be distributed such that some of applicationprogram 364 may be included on a computer readable media within anelectronic device (e.g., electronic device 208) and some of applicationprogram 364 may be included on a server (e.g., server 205). In otherembodiments, application program 364 may be configured to run onelectronic device 208, server 205, storage device 204, communicationdevice 206, another computing device 207 (see FIG. 3 ), or anycombination thereof. As a specific example, application program 364 mayexist on server 205 and may be accessible to an end-user via anelectronic device 208.

With reference to FIGS. 3-5 , a contemplated operation of system 200will now be described. During operation, camera 202 may be configured tocapture and convey video to local storage device 204 continuously, oraccording to either a defined schedule or an event, such as motiondetected or a sensor being activated. It is noted that video stored onlocal storage device 204 may be stored a different bitrate (e.g.,usually higher) than live video streaming bitrates over Internet 210through relay server 205 and on to electronic device 208. Further,camera 202 may be configured to periodically capture and convey asnapshot image and/or an i-frame to server 205, which may be configuredfor storing one or more time-stamped snapshot images and/or i-frames.Alternatively, server 205 may be configured to capture and retrieve data(e.g., a snapshot image and/or an i-frame) from camera 202. Further, auser may access server 205 and view the data (e.g., one or moretime-stamped snapshot images and/or one or more i-frames). The data(e.g., time-stamped snapshot images and/or i-frames) may be used by theuser in deciding a date and time range of interest for viewing one ormore videos. More specifically, a user may interact with electronicdevice 208 and more specifically, a user interface (e.g., a graphicaluser interface (GUI)) of electronic device 208 that displays data (e.g.,previously saved time-stamped images and/or i-fames) and allows the userto request video to be downloaded from local storage device 204 byselecting a date and time range. Accordingly, system 200 may provide anend-user with access to data (e.g., both still images, i-frames, as wellas to archived video footage). The end-user may select a day and anapproximate time, and application program 364 can access and display alldata (e.g., preset images and/or i-frames). Further, an end-user, fromany computer and any location, can select, via application program 364,one or more images to access archived video footage from any computerand any location.

In at least one embodiment, (e.g., instead of sending pictures to server205), one or more i-frames at the nearest date and time of interest maybe sent (e.g., in real-time) from camera 202 to server 205 and/orelectronic device 208 to provide more granular visibility of what mightbe recorded. In other words, sending discreet frames (e.g., instead ofpictures) to help users find content of interest by moving a selectioncomponent (e.g., a slider) that shows frames closest to that time. Thismay provide a way to scrub video using limited data while providing whatlooks like the video stored in server 205.

In one contemplated operation, a user may request a video clip thatincludes a portion of a video clip that was already downloaded from aprevious request. In this case, to reduce data consumption, at least aportion of the previously downloaded video clip may be used. Further, insome embodiments, the previously downloaded video clip may be combinedwith a newly downloaded video clip to fulfill the end-users video cliprequest. In other words, cache portions of video that were previouslydownloaded may be used with new portions (i.e., recently downloadedclips) of video that overlap with that the time frame identified by theuser. Further, it is noted that a user request does not necessarily needto be a date/time stamp generated request. Rather, for example, arequest may include an offset of a time or frame number. Any data toindicate date/time region may be used to identify and/or retrieve video.

FIG. 5 is a screenshot 400 illustrating a graphical user interface (GUI)configured for displaying saved, time-stamped images. The images mayenable a user to request video to be downloaded by selecting a date and,possibly, a time range. More specifically, as illustrated, the GUIincludes a calendar display 402 for selecting a desired month and day.Further, the GUI includes a scale 404 and a selection component (e.g., aslider) 405 for selecting an approximate hour and a scale 406 andselection component for selecting a specific start and stop time of theselected hour. In addition, the GUI includes a plurality of images 408,which are labeled as being captured at specific times between the startand stop times selected by selection component 407. The GUI furtherincludes an icon 410, which, upon selection by a user, may cause a videoassociated with a selected image and/or a date/time range to bedownloaded. Based on a video request made by a user, application program364 may communicate with camera 202 and/or storage device 204 and maysearch for and download all videos on camera 202 and/or storage device204 from within the specified date/time range from local storage device204 to a server (e.g., server 205). Application program 364 maycommunicate with camera 202 and/or storage device 204 via, for example,standard protocols, such as HTTP, FTP, SSH, and Telnet, or a devicespecific application programming interface (API). Each camera 202 orstorage device 204 may be different, thus, according to one embodiment,an abstraction layer for communication may be used to allow applicationprogram 364 to communicate with each type of camera or storage device.

It is noted that if the application program 364 identifies two or morevideo clips (i.e., within the specified date/time range), applicationprogram 364 may be configured to merge the clips into one continuousclip. Further, application program 364 may also convert the video clipto a video clip (e.g., an internet standard video clip) compatible withall suitable devices, operating systems, and browsers. After a video hasbeen retrieved and processed, application program 364 may publish thevideo for the end-user to download and notify the end-user when thevideo is accessible. The retrieved video can be stored in the cloud(e.g., within server 205) for multiple users to view simultaneouslyand/or can be delivered electronically (e.g., email, SMS/text, and/orftp the video to a designated server, etc.) to one or more end-users.

It is noted that all pan, tilt, and zoom (PTZ) presets of camera 202 maybe controlled via system 200, making it possible for cameras 202 to havea virtually unlimited number of presets that can be managed by anynumber of authorized end-users without giving explicit access to cameras202. System 200, and more specifically application program 364, may beconfigured to store information regarding each camera 202 (e.g., type,location, etc.) and enable users to select cameras from a master list orby a geographical location. Once a user selects a camera, the user mayaccess and control the camera (e.g., pan, tilt, and zoomfunctionalities) via an electronic device 208 (e.g., any computer orsmartphone) and application program 364. Additionally, a user mayconfigure a camera according to one or more presets (e.g., via a presetcamera management tool). Further, a user can create new presets that maybecome a database for archived images. Thus, a camera may operateaccording to an end-user's presets and capture snapshot images atdesired intervals. Additionally, an end-user may manage time-lapse andother archiving functions directly from a preset camera management tool.

System 200 may further be configured for performing user authentication,security, and management features, making it possible for an end-user tomanage world-wide networks of, for example, thousands of cameras. System200 may also include a virtual security barrier between users andcameras 202, ensuring an unprecedented level of security (e.g., securitysuitable for the highest level of government security).

As will be appreciated, system 200 is hardware agnostic, and, thus, maybe compatible with most, if not all, cameras (e.g., IP cameras and CCTVcameras with encoders), network connectivity solutions (e.g., broadband,cellular, satellite, WiFi, etc.), and network topologies (e.g., public,private, private on VPN, etc.). In addition, embodiments of the presentdisclosure may utilize industry standard compression and transporttechnologies to ensure compatibility with current and future cameratechnologies. Further, because system 200 is hardware agnostic andprovides a camera management layer to all cameras system-wide, camerahardware that fails can be easily and quickly replaced with the samecamera model or different hardware or manufacturer or model, all thewhile the end-user has the exact same experience viewing and operatingthe camera. It is noted that system 200 may be configured to convey data(i.e., from one or more cameras 202) to any suitable device anywhere inthe world, regardless of the original camera manufacturers supportedspecifications. This may provide users with an unprecedented level ofaccess to their cameras regardless of where they are or what device theymay be using at the time. Further, because system 200 may be compatiblewith all known and suitable cameras, an end-user's hardware investmentsmay be protected for an extended period beyond support.

In addition, system 200 may include an added layer of system analyticsto users (e.g., customers) providing critical real-time data and reportssuch as user activity including date/time, IP address, device, OS,stream duration, camera control history, camera viewing history, loginand logout, as well as number of concurrent viewers per camera, cameraup time, system health, etc. According to other embodiments, system 200may be configured to provide geo-location capabilities for cameras 202,making it possible to map an end-user's camera locations, as well asprovide real-time automatic vehicle location (AVL) for live streamingvideo from mobile units, such as mobile cars, trucks, and/or livingbeings with cameras. This includes the unique ability to map “breadcrumb” images on maps showing precise locations (including pictures)where cameras have been with date/time stamps.

Although the various embodiments have been described with reference tocamera systems, the present disclosure is not so limited. Rather, system200 may include one or more sensors and/or control devices, integratingadditional data and control capabilities to camera locations making iteasy for users to get additional information and to control othersystems from a single interface.

According to one embodiment, application program 364 may include, or maybe compatible with, a development (API), which may enable customers tointegrate their video camera streams into their own website, without theneed to constantly update the website if camera hardware changes,network topologies change, etc., and without worrying about the amountof user load (simultaneous viewers) they will experience.

System 200 may be implemented with industry standard security protocols,and employ measures to ensure secure streaming video portals. By way ofexample, system 200 may be configured to require user authenticationbefore access is permitted and users may be assigned specific roles(i.e., permissions) within system 200, which allows the user to accessand perform specific camera and system operations. User permissions mayinclude functionality relating to viewing camera stream, viewing cameraarchives, controlling camera presets, controlling camerapan/tilt/zoom/focus features, suspending camera patrol, and managingcamera presets. Further, permissions may be granted according to variouspermission levels. As one example, a user with “administrator user”permissions can create, edit, view, and delete users under their domain.The user can also change user permissions, camera access rights, resetpasswords, and access full analytics.

System 200 may provide a user with full administration capability. Thus,a user may manage who has access to one or more cameras, when they haveaccess, and how they have access, including user roles, camera accessrights, and password.

System 200 may further utilize industry standard encryption techniques.For example, user access to system 200 may be performed over HTTPS(256-bit SSL encryption), and industry standard encryption may be usedto encrypt video/audio streams between cameras and video transcoders andrelay servers. Further, industry standard encryption may be used toencrypt video and audio streams between video transcoders and relayservers and to an end-user. Because system 200 may obfuscate the camera,sensor, and data acquisition hardware from the end-user, “hacking” isvirtually eliminated because all network assets can be on private(non-public accessible) networks.

FIG. 6 is a flowchart illustrating a method 500, in accordance with anembodiment of the present disclosure. With reference to FIGS. 3-6 ,method 500 will now be described. Initially, a user may select a date,and possibly, a time range (depicted by act 502). Further, the user mayinteract with a GUI to request a video from the selected date and timerange (depicted by act 502). In response to a video request, applicationprogram 364 may scan through available recordings (i.e., in camera 202and/or storage device 204) to locate one or more relevant video clips(depicted by act 504). It may then be determined whether at least onevideo clip is located (depicted by act 506). If no video clips arelocated, the user may be notified that no video clips exist for theselected date and time range (depicted by act 508). If at least onevideo clip is located, the at least one video clip may be downloaded toserver 205 (depicted by act 510). Moreover, it may be determined if morethan one video clip is downloaded (depicted by act 512). If so, thevideo clips may be merged into a single clip (depicted by act 514) andmethod may continue to act 516, which includes publishing the singleclip for viewing by a user. If only one video clip is downloaded, thevideo clip may be published for the user to access (depicted by act516). Furthermore, in act 518, an alert may be provided to the userindicating that the video clip is available for viewing.

FIG. 7 is a flowchart of a method 600, according to an embodiment of thepresent disclosure. Method 600 includes capturing at least one videoclip and at least one image with at least one camera at a cameralocation (act 602). Method 600 further includes periodically downloadingone or more images of the at least one image to a remote server (act604). In addition, method 600 includes enabling video including the atleast one video clip and being associated with at least one selectedimage of the at least one image to be displayed at an electronic deviceremote from the at least one camera and the server (act 606).

As will be appreciated by a person having ordinary skill in the art,embodiments of the present disclosure may not require any costlyhardware onsite, thus decreasing implementation costs and monthlycommunications costs. Further, power requirements to run a remote camerasystem off-grid may be decreased. By keeping recording local to acamera, system 200 may record video 24 hours a day/7 days a week at highvideo quality without using any communication data across the cellularor satellite connection. When an “event” occurs that a user isinterested in seeing, the user can use an online service portal torequest the retrieval of video within the time frame of interest fromthe remote camera. In this way, only the video data of interest istransmitted over the cellular or satellite connection. The retrievedvideo may be at a high quality and the cost of transmitting a clip ofvideo is much lower than streaming 24/7 hours a day/7 days a week. Powerconsumption of the remote camera system will be kept at a minimumbecause only a camera with a memory card (or low power external harddrive) is needed to record the video.

Although the foregoing description contains many specifics, these shouldnot be construed as limiting the scope of the disclosure or of any ofthe appended claims, but merely as providing information pertinent tosome specific embodiments that may fall within the scopes of thedisclosure and the appended claims. Features from different embodimentsmay be employed in combination. In addition, other embodiments of thedisclosure may also be devised which lie within the scopes of thedisclosure and the appended claims. The scope of the disclosure is,therefore, indicated and limited only by the appended claims and theirlegal equivalents. All additions, deletions and modifications to thedisclosure, as disclosed herein, that fall within the meaning and scopesof the claims are to be embraced by the claims.

What is claimed:
 1. A system, comprising: at least one camera at acamera location and configured to record one or more videos and one ormore images; and an application program configured to: download, fromthe camera location, at least one image of the one or more imagescaptured at the camera location; enable the at least one downloadedimage to be displayed via an electronic device remote from the cameralocation; and in response to user input via the electronic device,download from the camera location a specific portion of the one or morevideos previously captured at the camera location.
 2. The system ofclaim 1, further comprising: at least one storage device at the cameralocation and communicatively coupled the at least one camera; and amodem at the camera location and communicatively coupled to at least oneof the at least one storage device or the at least one camera.
 3. Thesystem of claim 1, wherein the application program is configured toenable the electronic device to download the specific portion of the oneor more videos.
 4. The system of claim 1, wherein the applicationprogram is further configured to combine two or more video clips togenerate the specific portion of the one or more videos.
 5. The systemof claim 1, further comprising at least one storage device coupled tothe at least one camera.
 6. The system of claim 1, the applicationprogram further configured to enable a user, via the electronic device,to select a downloaded image based on a specific date and time.
 7. Amethod, comprising: recording at least one video clip and one or moreimages at a camera location; downloading at least one image of the oneor more images without substantially simultaneously downloading the atleast one video clip; enabling the at least one image to be displayed atan electronic device remote from the camera location; and downloading,in response to a request associated with the at least one displayedimage, a previously recorded portion of interest of the at least onevideo clip.
 8. The method of claim 7, wherein downloading the at leastone image comprises periodically downloading an image of the at leastone image.
 9. The method of claim 7, further comprising combining two ormore video clips of the portion of interest to generate a single videoclip.
 10. The method of claim 7, further comprising displaying a userinterface (UI) including a calendar, a selection component for selectinga time period, and the at least one image within the selected timeperiod.
 11. The method of claim 7, wherein downloading the previouslyrecorded portion of interest comprises downloading the previouslyrecorded portion of interest without downloading all other portions ofthe at least one video clip from the camera location.
 12. The method ofclaim 7, further comprising enabling the portion of interest to beplayed at the electronic device.
 13. The method of claim 12, whereinenabling the portion of interest to be played comprises causing theportion of interest to be accessible in the cloud.
 14. A system,comprising: at least one camera at a camera location and configured tocapture one or more videos and one or more images; the system configuredto: download at least one image of the one or more images captured atthe camera location; enable the at least one downloaded image to bedisplayed at an electronic device remote from the camera location; andin response to a user input, download a specific portion of the one ormore videos captured at the camera location without downloading everyother portion of the one or more videos.
 15. The system of claim 14,further comprising: at least one storage device at the camera locationand communicatively coupled to the at least one camera; and acommunication device at the camera location and communicatively coupledto at least one of the at least one storage device or the at least onecamera.
 16. The system of claim 14, wherein the user input comprisesselection of an image of the at least one displayed downloaded image.17. A system, comprising: at least one camera at a camera location; thesystem configured to: download data associated with at least one videocaptured via the camera; enable at least a portion of the downloadeddata to be displayed via an electronic device; and in response to a userselection related to at least some of the displayed data, download, fromthe camera location, a specific portion of the at least one videocaptured at the camera location.
 18. The system of claim 17, wherein thedata comprises one or more images captured via the camera.
 19. Anon-transitory computer readable media configured to store a set ofinstructions that, when executed by one or more processors, cause asystem to perform operations comprising: download, from a cameralocation, at least one image of one or more images captured at thecamera location; display, at an electronic device remote from the cameralocation, the one or more downloaded images; and in response to a userinput, download, from the camera location, a specific portion of one ormore videos captured at the camera location without downloading everyother portion of the one or more videos from the camera location. 20.The non-transitory computer readable media of claim 19, wherein the userinput comprises a selection of an image of the one or more downloadedimages.